/*
 * Controller.h
 *
 *  Created on: 10/01/2011
 *      Author: Nenem
 */

#ifndef CONTROLLER_H_
#define CONTROLLER_H_

#include <iostream>
using namespace std;

class GameObject;
class Model;

class Controller {
public:
	Controller() {}
	virtual ~Controller() {}
	virtual void update(Model *targetModel, GameObject *myObj) = 0;
	virtual void init() = 0;
	virtual bool getACTION() const =0;
	virtual bool getDOWN() const =0;
	virtual bool getLEFT() const =0;
	virtual bool getRIGHT() const =0;
	virtual bool getRUN() const =0;
	virtual bool getSPECIAL_ATACK() const =0;
	virtual bool getUP() const =0;
	virtual void setACTION(bool ACTION) = 0;
	virtual void setDOWN(bool DOWN) = 0;
	virtual void setLEFT(bool LEFT) = 0;
	virtual void setRIGHT(bool RIGHT) = 0;
	virtual void setRUN(bool RUN) = 0;
	virtual void setSPECIAL_ATACK(bool SPECIAL_ATACK) = 0;
	virtual void setUP(bool UP) = 0;
};

#endif /* CONTROLLER_H_ */
